iced_native 0.4.0

A renderer-agnostic library for native GUIs
Documentation

iced_native

Documentation Crates.io License project chat

iced_native takes iced_core and builds a native runtime on top of it, featuring:

  • A custom layout engine, greatly inspired by druid
  • Event handling for all the built-in widgets
  • A renderer-agnostic API

To achieve this, it introduces a bunch of reusable interfaces:

  • A Widget trait, which is used to implement new widgets: from layout requirements to event and drawing logic.
  • A bunch of Renderer traits, meant to keep the crate renderer-agnostic.
  • A Windowed trait, leveraging raw-window-handle, which can be implemented by graphical renderers that target windows. Window-based shells (like iced_winit) can use this trait to stay renderer-agnostic.

Installation

Add iced_native as a dependency in your Cargo.toml:

iced_native = "0.4"

Iced moves fast and the master branch can contain breaking changes! If you want to learn about a specific release, check out the release list.